home *** CD-ROM | disk | FTP | other *** search
/ Enter 2004 August / ENTER.ISO / files / gimp-2.0.5-i586-setup.exe / {app} / share / gimp / 2.0 / scripts / glowing-logo.scm < prev    next >
Encoding:
GIMP Script-Fu Script  |  2004-09-26  |  3.5 KB  |  106 lines

  1. ;  GLOWING
  2. ;  Create a text effect that simulates a glowing hot logo
  3.  
  4. (define (apply-glowing-logo-effect img
  5.                    logo-layer
  6.                    size
  7.                    bg-color)
  8.   (let* ((grow (/ size 4))
  9.      (feather1 (/ size 3))
  10.      (feather2 (/ size 7))
  11.      (feather3 (/ size 10))
  12.      (width (car (gimp-drawable-width logo-layer)))
  13.      (height (car (gimp-drawable-height logo-layer)))
  14.      (posx (- (car (gimp-drawable-offsets logo-layer))))
  15.      (posy (- (cadr (gimp-drawable-offsets logo-layer))))
  16.      (glow-layer (car (gimp-layer-copy logo-layer TRUE)))
  17.      (bg-layer (car (gimp-layer-new img width height RGB-IMAGE "Background" 100 NORMAL-MODE)))
  18.      (old-fg (car (gimp-palette-get-foreground)))
  19.      (old-bg (car (gimp-palette-get-background))))
  20.     (script-fu-util-image-resize-from-layer img logo-layer)
  21.     (gimp-image-add-layer img bg-layer 1)
  22.     (gimp-image-add-layer img glow-layer 1)
  23.     (gimp-layer-translate glow-layer posx posy)
  24.  
  25.     (gimp-selection-none img)
  26.     (gimp-palette-set-background bg-color)
  27.     (gimp-edit-fill bg-layer BACKGROUND-FILL)
  28.  
  29.     (gimp-layer-set-preserve-trans logo-layer TRUE)
  30.     (gimp-palette-set-background '(0 0 0))
  31.     (gimp-edit-fill logo-layer BACKGROUND-FILL)
  32.  
  33.     (gimp-selection-layer-alpha logo-layer)
  34.     (gimp-selection-feather img feather1)
  35.     (gimp-palette-set-background '(221 0 0))
  36.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  37.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  38.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  39.  
  40.     (gimp-selection-layer-alpha logo-layer)
  41.     (gimp-selection-feather img feather2)
  42.     (gimp-palette-set-background '(232 217 18))
  43.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  44.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  45.  
  46.     (gimp-selection-layer-alpha logo-layer)
  47.     (gimp-selection-feather img feather3)
  48.     (gimp-palette-set-background '(255 255 255))
  49.     (gimp-edit-fill glow-layer BACKGROUND-FILL)
  50.     (gimp-selection-none img)
  51.  
  52.     (gimp-layer-set-mode logo-layer OVERLAY-MODE)
  53.     (gimp-drawable-set-name glow-layer "Glow Layer")
  54.  
  55.     (gimp-palette-set-background old-bg)
  56.     (gimp-palette-set-foreground old-fg)))
  57.  
  58.  
  59. (define (script-fu-glowing-logo-alpha img
  60.                       logo-layer
  61.                       size
  62.                       bg-color)
  63.   (begin
  64.     (gimp-image-undo-group-start img)
  65.     (apply-glowing-logo-effect img logo-layer size bg-color)
  66.     (gimp-image-undo-group-end img)
  67.     (gimp-displays-flush)))
  68.  
  69. (script-fu-register "script-fu-glowing-logo-alpha"
  70.             _"<Image>/Script-Fu/Alpha to Logo/Glo_wing Hot..."
  71.             "Glowing hot logos"
  72.             "Spencer Kimball"
  73.             "Spencer Kimball"
  74.             "1997"
  75.             "RGBA"
  76.                     SF-IMAGE      "Image" 0
  77.                     SF-DRAWABLE   "Drawable" 0
  78.             SF-ADJUSTMENT _"Effect Size (pixels * 3)" '(150 2 1000 1 10 0 1)
  79.             SF-COLOR      _"Background Color" '(7 0 20)
  80.             )
  81.  
  82. (define (script-fu-glowing-logo text
  83.                 size
  84.                 font
  85.                 bg-color)
  86.   (let* ((img (car (gimp-image-new 256 256 RGB)))
  87.      (border (/ size 4))
  88.      (text-layer (car (gimp-text-fontname img -1 0 0 text border TRUE size PIXELS font))))
  89.     (gimp-image-undo-disable img)
  90.     (apply-glowing-logo-effect img text-layer size bg-color)
  91.     (gimp-image-undo-enable img)
  92.     (gimp-display-new img)))
  93.  
  94. (script-fu-register "script-fu-glowing-logo"
  95.             _"<Toolbox>/Xtns/Script-Fu/Logos/Glo_wing Hot..."
  96.             "Glowing hot logos"
  97.             "Spencer Kimball"
  98.             "Spencer Kimball"
  99.             "1997"
  100.             ""
  101.             SF-STRING     _"Text" "GLOWING"
  102.             SF-ADJUSTMENT _"Font Size (pixels)" '(150 2 1000 1 10 0 1)
  103.             SF-FONT       _"Font" "Slogan"
  104.             SF-COLOR      _"Background Color" '(7 0 20)
  105.             )
  106.